Hash tag management in a microblogging infrastructure

ABSTRACT

Architecture that provides enhanced tag telemetry in a microblogging communications infrastructure. The architecture provides efficient discovery and tracking of topics that are of interest to a specific user by enabling users to follow (track) hash tags (#tag) and to receive and view all messages tagged with the hash tag appear in the user&#39;s personal feed. Each hash tag has a persisted tag page that aggregates all the associated activity, and includes a list that includes, but is not limited to, the tag followers, the most frequent user (uses the tag the most often in a specific time frame), a description, related tags, for example. The user can receive all the updates in the user&#39;s personal feed, and see an aggregation of all the messages and conversations associated with the tag in single place. The user can also mute the tag to prevent the receiving of tag information.

RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No. 12/970,966, filed Dec. 17, 2010, and entitled “Hash Tag Management in a Microblogging Infrastructure,” which is hereby incorporated by reference.

BACKGROUND

It is difficult for users to find information in a microblog feed that relates to topics of interest. Microblogging differs from blogging in that content is typically smaller than that utilized in blogging. Thus, users are not tasked with the time to read larger blog type messages of hundreds of words. For example, a microblog message may consist of nothing more than a sentence fragment, or an image, for example, in contrast to blog messages that typically contain more content. Moreover, the microblog message content is smaller in size and overall file size is typically much smaller than blog messages.

Existing microblog infrastructures are limited; for example, when the user finds such a topic of interest, it is then further difficult to receive updates about the latest posts and discussions related to the topic. Thus, in order to track all the conversations (messages) about the topic the user has to either continually search for that topic or read every message in the feed.

SUMMARY

The following presents a simplified summary in order to provide a basic understanding of some novel embodiments described herein. This summary is not an extensive overview, and it is not intended to identify key/critical elements or to delineate the scope thereof. Its sole purpose is to present some concepts in a simplified form as a prelude to the more detailed description that is presented later.

The disclosed architecture provides enhanced tag management in a microblogging communications infrastructure. The architecture provides efficient discovery and tracking of topics that are of interest to a specific user by enabling users to follow (track) hash (#) tags (denoted as #tag) and to receive and view all messages tagged (or associated) with the hash tag in the user's personal feed. Each hash tag has a persisted tag page that aggregates all the associated activity, and includes a list that includes, but is not limited to, the tag followers, the most frequent user (uses the tag the most often in a specific time frame), a description, and related tags, for example. Following the tag and dedicating a page to a specific topic (#tag) enables the user to receive all the updates in the user's personal feed, and to see an aggregation of all the messages and conversations associated with the tag in single place (on the tag page). The user can also mute the tag to prevent the receipt of tag information (e.g., content associated with the tag) via a feed (e.g., personal).

To the accomplishment of the foregoing and related ends, certain illustrative aspects are described herein in connection with the following description and the annexed drawings. These aspects are indicative of the various ways in which the principles disclosed herein can be practiced and all aspects and equivalents thereof are intended to be within the scope of the claimed subject matter. Other advantages and novel features will become apparent from the following detailed description when considered in conjunction with the drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a computer-implemented information system in accordance with the disclosed architecture.

FIG. 2 illustrates interactive flow between aspects of an information system that employs tag telemetry in a microblogging platform.

FIG. 3 illustrates a tag page for tag management.

FIG. 4 illustrates a follow page for tag management.

FIG. 5 illustrates a computer-implemented information method in accordance with the disclosed architecture.

FIG. 6 illustrates further aspects of the method of FIG. 5.

FIG. 7 illustrates an alternative information method.

FIG. 8 illustrates further aspects of the method of FIG. 7.

FIG. 9 illustrates a block diagram of a computing system that executes tag telemetry in accordance with the disclosed architecture.

DETAILED DESCRIPTION

Microblogging is an efficient tool for short and brief communications of conversation and the like. The disclosed architecture provides the capability to select and follow a tag, and receive messages associated with the tag (e.g., having an embedded tag) via the user's personal feed. Users can follow tags of interest, and see messages that contain this tag in the personal feed (a user-specific data pipe via which information is communicated) thereby enabling users to stay apprised of the latest activities and news around that topic. Moreover, the user can enrich the tag with metadata such as description.

Reference is now made to the drawings, wherein like reference numerals are used to refer to like elements throughout. In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding thereof. It may be evident, however, that the novel embodiments can be practiced without these specific details. In other instances, well known structures and devices are shown in block diagram form in order to facilitate a description thereof. The intention is to cover all modifications, equivalents, and alternatives falling within the spirit and scope of the claimed subject matter.

FIG. 1 illustrates a computer-implemented information system 100 in accordance with the disclosed architecture. The system 100 includes a tracking component 102 of a microblog platform that tracks a hash tag 104 as selected by a user. The hash tag 104 can be embedded in microblog messages. The system 100 can also comprise a consolidation component 106 of the microblog platform that consolidates instances 108 of the hash tag 104 and associated microblog messages 110 as a tag page 112 and provides access to the tag page 112 based on any instance of the hash tag in the microblog communications infrastructure (e.g., via a personal feed page 114 of the user). Note that access to the tag page 112 can be from any mention of the #tag. For example, access can be from mentioning of the hash tag in the user's personal feed, from a message in the company feed, from search results, from a page that contains a list of tags a user follows, etc. Moreover, when a user creates a tag in a message, a page is automatically generated for that tag, and any user can follow the tag from that point forward.

The tag page 112 can include messages associated with the hash tag 104. The tag page 112 can also include at least one of a list of tag followers, a description, related hash tags, or identity of a tag user. The tag user can be included on the tag page 112 based on usage frequency of the hash tag 104 by the tag user. The hash tag 104 is associated with metadata added by the user. The personal feed page 114 receives all microblog messages associated with the hash tag 104. The hash tag 104 can be muted to prevent reception of associated microblog messages via the personal feed page 114.

The hash tag 104 can be followed from a message in the personal feed page 114 or any mention (instance) of the hash tag in the system (e.g., microblogging infrastructure). When the user chooses to follow (track) a particular hash tag, then all messages that include the hash tag will appear in the user's feed. The hash tag 104 can be searched from the personal feed page 114 and tracked for all instances by the tracking component 102.

FIG. 2 illustrates interactive flow between aspects of an information system 200 that employs tag telemetry in a microblogging platform. The system 200 includes the feed page 114 from which a search can be performed. The search results 202 list tags, one or more of which can be selected for following (tracking). In response, the tag page 112 is created for the selected tag and all instances of the tag currently in use are presented on the tag page 112. Additionally, updates to the tag can also be discovered and tracked on the tag page 112. The feed page 114 also provides a selectable link to the tag page 112 for a more comprehensive review of the tag instances, metadata, and associated microblog messages. The feed page 114 can also include a link (denoted Topics Menu Item) that navigates the user to all the topics the user chooses to follow (referred to as the topics page 204).

If the user chooses to track a new topic (identified as the hash tag followed by the topic (e.g., one or more descriptive and identifying words)), the selected new topic can be added to the user's topics page 204. The topics page 204 can also include a pointer (or link) to all topics in the company 206 (and search capabilities). Thus, there can be not only the personal feed page, but a company feed page 206, which includes all topics and tags of the company. Thus, the topics page 204 can further comprise an all topics link that points to the company feed page 206 which includes all the topics and tags. The topics page 204 can also include a link or navigation back to the user's tag page 112. The user's topic page 204 can include a mixture of people and tags.

FIG. 3 illustrates a tag page 300 for tag telemetry. The tag page includes selectable controls for a personal feed 302 and a company feed 304. Here, the user is interested in the microblog information for the personal feed 302. A post area 306 allows for entering text as a message to others. The post area 306 also enables the user to enter a URL (uniform resource locator), if desired, as well as other media such as an image, for example. The post area 306 provides the capability to insert or associate URLs, and other media such as image file and/or video files (using the camera icon control), for example. Additionally, the hash tag (here, #psf) automatically appears in the post area box 307 thereby obviating the need for manual entry by the user.

A tag control 308 allows the user to select the hash tag for following and/or muting. Here, in this example usage of a hash tag having an arbitrary name of “psf”, the hash tag #psf is being followed, along with all messages communicated with the #psf hash tag. A message area 310 shows the messages associated with the selected hash tag (#psf).

An informational area 312 provides status information. For example, the user identified as the mayor is presented. Other information presented include the number of users following the selected hash tag (#psf), topics deemed similar to the hash tag, the rank of the hash tag for a given period of time (e.g., one week), trending topics, and RSS (really simple syndication) feed information.

A filtering control 314 can also be provided that when selected exposes a filtering dialog to allow filtering based on criteria such as most popular, just added, by alphanumeric characters (e.g., a-z, 0-9, special characters, etc.), and attachments, dates, user, and so on.

FIG. 4 illustrates a follow page 400 for tag telemetry. The follow page 400 presents the hash tags that a user has or can select to follow (or track). The follow page 400 can include the post area 306, a listing of topics to follow or unfollow. As depicted, the follow page 400 enables the user to view the RSS feeds, most popular topics, and the recently added topics.

Included herein is a set of flow charts representative of exemplary methodologies for performing novel aspects of the disclosed architecture. While, for purposes of simplicity of explanation, the one or more methodologies shown herein, for example, in the form of a flow chart or flow diagram, are shown and described as a series of acts, it is to be understood and appreciated that the methodologies are not limited by the order of acts, as some acts may, in accordance therewith, occur in a different order and/or concurrently with other acts from that shown and described herein. For example, those skilled in the art will understand and appreciate that a methodology could alternatively be represented as a series of interrelated states or events, such as in a state diagram. Moreover, not all acts illustrated in a methodology may be required for a novel implementation.

FIG. 5 illustrates a computer-implemented information method in accordance with the disclosed architecture. At 500, a hash tag of personal interest is selected via a microblog platform. At 502, the hash tag is tracked in a microblog communications infrastructure. At 504, messages associated with the hash tag are received. At 506, the hash tag and associated messages are aggregated on a tag page based on any instance of the hash tag in the microblog communications infrastructure.

FIG. 6 illustrates further aspects of the method of FIG. 5. Note that the flow indicates that each block can represent a step that can be included, separately or in combination with other blocks, as additional aspects of the method represented by the flow chart of FIG. 5. At 600, metadata is added to the hash tag, the metadata includes at least one of a list of tag followers, a description, related hash tags, or identity of a tag user. At 602, a most frequent user of the tag is computed and the most frequent user is presented on the tag page. At 604, the hash tag can be muted to prevent reception via the personal feed. Note however, although the tag will not show on the user's feed, the user can go to the tag page and be updated with all the new messages related to the hash tag. The company feed still receives all instances and associated messages. Thus, muting the hash tag does not affect the tag page. At 606, for all instances of a new hash tag are searched and the new hash tag is tracked via the personal feed. At 608, a new hash tag page is created and the instances of the new hash tag and associated new messages are aggregated on the new tag page. At 610, the new hash tag is updated as new messages associated with the new hash tag are communicated.

FIG. 7 illustrates an alternative information method. At 700, a hash tag of personal interest is selected via a microblog platform. At 702, a hash tag page is created for presentation of associated hash tag information. At 704, the hash tag is tracked in a microblog communications infrastructure. At 706, messages associated with the hash tag are retrieved via a personal feed. At 708, the hash tag and associated messages are aggregated on the tag page. At 710, metadata is added to the hash tag, the metadata includes at least one of a list of tag followers, a description, related hash tags, or identity of a tag user. At 712, a most frequent user of the hash tag is computed and the most frequent user is presented on the tag page.

FIG. 8 illustrates further aspects of the method of FIG. 7. Note that the flow indicates that each block can represent a step that can be included, separately or in combination with other blocks, as additional aspects of the method represented by the flow chart of FIG. 7. At 800, the hash tag is muted to prevent reception of the hash tag and associated messages via the personal feed. At 802, for all instances of a new hash tag are searched and the new hash tag is tracked via the personal feed. At 804, a new hash tag page is created, the instances of the new hash tag and associated new messages are aggregated on the new tag page. The new hash tag (and associated new tag page) is updated as new messages associated with the new hash tag are communicated in microblog communications infrastructure.

As used in this application, the terms “component” and “system” are intended to refer to a computer-related entity, either hardware, a combination of software and tangible hardware, software, or software in execution. For example, a component can be, but is not limited to, tangible components such as a processor, chip memory, mass storage devices (e.g., optical drives, solid state drives, and/or magnetic storage media drives), and computers, and software components such as a process running on a processor, an object, an executable, a data structure (stored in volatile or non-volatile storage media), a module, a thread of execution, and/or a program. By way of illustration, both an application running on a server and the server can be a component. One or more components can reside within a process and/or thread of execution, and a component can be localized on one computer and/or distributed between two or more computers. The word “exemplary” may be used herein to mean serving as an example, instance, or illustration. Any aspect or design described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other aspects or designs.

Referring now to FIG. 9, there is illustrated a block diagram of a computing system 900 that executes tag telemetry in accordance with the disclosed architecture. However, it is appreciated that the some or all aspects of the disclosed methods and/or systems can be implemented as a system-on-a-chip, where analog, digital, mixed signals, and other functions are fabricated on a single chip substrate. In order to provide additional context for various aspects thereof, FIG. 9 and the following description are intended to provide a brief, general description of the suitable computing system 900 in which the various aspects can be implemented. While the description above is in the general context of computer-executable instructions that can run on one or more computers, those skilled in the art will recognize that a novel embodiment also can be implemented in combination with other program modules and/or as a combination of hardware and software.

The computing system 900 for implementing various aspects includes the computer 902 having processing unit(s) 904, a computer-readable storage such as a system memory 906, and a system bus 908. The processing unit(s) 904 can be any of various commercially available processors such as single-processor, multi-processor, single-core units and multi-core units. Moreover, those skilled in the art will appreciate that the novel methods can be practiced with other computer system configurations, including minicomputers, mainframe computers, as well as personal computers (e.g., desktop, laptop, etc.), hand-held computing devices, microprocessor-based or programmable consumer electronics, and the like, each of which can be operatively coupled to one or more associated devices.

The system memory 906 can include computer-readable storage (physical storage media) such as a volatile (VOL) memory 910 (e.g., random access memory (RAM)) and non-volatile memory (NON-VOL) 912 (e.g., ROM, EPROM, EEPROM, etc.). A basic input/output system (BIOS) can be stored in the non-volatile memory 912, and includes the basic routines that facilitate the communication of data and signals between components within the computer 902, such as during startup. The volatile memory 910 can also include a high-speed RAM such as static RAM for caching data.

The system bus 908 provides an interface for system components including, but not limited to, the system memory 906 to the processing unit(s) 904. The system bus 908 can be any of several types of bus structure that can further interconnect to a memory bus (with or without a memory controller), and a peripheral bus (e.g., PCI, PCIe, AGP, LPC, etc.), using any of a variety of commercially available bus architectures.

The computer 902 further includes machine readable storage subsystem(s) 914 and storage interface(s) 916 for interfacing the storage subsystem(s) 914 to the system bus 908 and other desired computer components. The storage subsystem(s) 914 (physical storage media) can include one or more of a hard disk drive (HDD), a magnetic floppy disk drive (FDD), and/or optical disk storage drive (e.g., a CD-ROM drive DVD drive), for example. The storage interface(s) 916 can include interface technologies such as EIDE, ATA, SATA, and IEEE 1394, for example.

One or more programs and data can be stored in the memory subsystem 906, a machine readable and removable memory subsystem 918 (e.g., flash drive form factor technology), and/or the storage subsystem(s) 914 (e.g., optical, magnetic, solid state), including an operating system 920, one or more application programs 922, other program modules 924, and program data 926.

The one or more application programs 922, other program modules 924, and program data 926 can include the entities and components of the system 100 of FIG. 1, the entities and components of the flow diagram for the information system 200 of FIG. 2, the tag page 300 of FIG. 3, the follow page 400 of FIG. 4, and the methods represented by the flowcharts of FIGS. 5-8, for example.

Generally, programs include routines, methods, data structures, other software components, etc., that perform particular tasks or implement particular abstract data types. All or portions of the operating system 920, applications 922, modules 924, and/or data 926 can also be cached in memory such as the volatile memory 910, for example. It is to be appreciated that the disclosed architecture can be implemented with various commercially available operating systems or combinations of operating systems (e.g., as virtual machines).

The storage subsystem(s) 914 and memory subsystems (906 and 918) serve as computer readable media for volatile and non-volatile storage of data, data structures, computer-executable instructions, and so forth. Such instructions, when executed by a computer or other machine, can cause the computer or other machine to perform one or more acts of a method. The instructions to perform the acts can be stored on one medium, or could be stored across multiple media, so that the instructions appear collectively on the one or more computer-readable storage media, regardless of whether all of the instructions are on the same media.

Computer readable media can be any available media that can be accessed by the computer 902 and includes volatile and non-volatile internal and/or external media that is removable or non-removable. For the computer 902, the media accommodate the storage of data in any suitable digital format. It should be appreciated by those skilled in the art that other types of computer readable media can be employed such as zip drives, magnetic tape, flash memory cards, flash drives, cartridges, and the like, for storing computer executable instructions for performing the novel methods of the disclosed architecture.

A user can interact with the computer 902, programs, and data using external user input devices 928 such as a keyboard and a mouse. Other external user input devices 928 can include a microphone, an IR (infrared) remote control, a joystick, a game pad, camera recognition systems, a stylus pen, touch screen, gesture systems (e.g., eye movement, head movement, etc.), and/or the like. The user can interact with the computer 902, programs, and data using onboard user input devices 930 such a touchpad, microphone, keyboard, etc., where the computer 902 is a portable computer, for example. These and other input devices are connected to the processing unit(s) 904 through input/output (I/O) device interface(s) 932 via the system bus 908, but can be connected by other interfaces such as a parallel port, IEEE 1394 serial port, a game port, a USB port, an IR interface, short-range wireless (e.g., Bluetooth) and other personal area network (PAN) technologies, etc. The I/O device interface(s) 932 also facilitate the use of output peripherals 934 such as printers, audio devices, camera devices, and so on, such as a sound card and/or onboard audio processing capability.

One or more graphics interface(s) 936 (also commonly referred to as a graphics processing unit (GPU)) provide graphics and video signals between the computer 902 and external display(s) 938 (e.g., LCD, plasma) and/or onboard displays 940 (e.g., for portable computer). The graphics interface(s) 936 can also be manufactured as part of the computer system board.

The computer 902 can operate in a networked environment (e.g., IP-based) using logical connections via a wired/wireless communications subsystem 942 to one or more networks and/or other computers. The other computers can include workstations, servers, routers, personal computers, microprocessor-based entertainment appliances, peer devices or other common network nodes, and typically include many or all of the elements described relative to the computer 902. The logical connections can include wired/wireless connectivity to a local area network (LAN), a wide area network (WAN), hotspot, and so on. LAN and WAN networking environments are commonplace in offices and companies and facilitate enterprise-wide computer networks, such as intranets, all of which may connect to a global communications network such as the Internet.

When used in a networking environment the computer 902 connects to the network via a wired/wireless communication subsystem 942 (e.g., a network interface adapter, onboard transceiver subsystem, etc.) to communicate with wired/wireless networks, wired/wireless printers, wired/wireless input devices 944, and so on. The computer 902 can include a modem or other means for establishing communications over the network. In a networked environment, programs and data relative to the computer 902 can be stored in the remote memory/storage device, as is associated with a distributed system. It will be appreciated that the network connections shown are exemplary and other means of establishing a communications link between the computers can be used.

The computer 902 is operable to communicate with wired/wireless devices or entities using the radio technologies such as the IEEE 802.xx family of standards, such as wireless devices operatively disposed in wireless communication (e.g., IEEE 802.11 over-the-air modulation techniques) with, for example, a printer, scanner, desktop and/or portable computer, personal digital assistant (PDA), communications satellite, any piece of equipment or location associated with a wirelessly detectable tag (e.g., a kiosk, news stand, restroom), and telephone. This includes at least Wi-Fi (or Wireless Fidelity) for hotspots, WiMax, and Bluetooth™ wireless technologies. Thus, the communications can be a predefined structure as with a conventional network or simply an ad hoc communication between at least two devices. Wi-Fi networks use radio technologies called IEEE 802.11x (a, b, g, etc.) to provide secure, reliable, fast wireless connectivity. A Wi-Fi network can be used to connect computers to each other, to the Internet, and to wire networks (which use IEEE 802.3-related media and functions).

The illustrated and described aspects can be practiced in distributed computing environments where certain tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules can be located in local and/or remote storage and/or memory system.

What has been described above includes examples of the disclosed architecture. It is, of course, not possible to describe every conceivable combination of components and/or methodologies, but one of ordinary skill in the art may recognize that many further combinations and permutations are possible. Accordingly, the novel architecture is intended to embrace all such alterations, modifications and variations that fall within the spirit and scope of the appended claims. Furthermore, to the extent that the term “includes” is used in either the detailed description or the claims, such term is intended to be inclusive in a manner similar to the term “comprising” as “comprising” is interpreted when employed as a transitional word in a claim. 

What is claimed is:
 1. A computer-implemented information system, comprising: a tracking component of a microblog platform that tracks a hash tag as selected by a user, the hash tag embedded in microblog messages communicated via a microblogging communications infrastructure; a consolidation component of the microblog platform that consolidates instances of the hash tag and associated microblog messages as a tag page and provides access to the tag page based on any instance of the hash tag in the microblogging communications infrastructure; and a processor that executes computer-executable instructions associated with at least the tracking component and the consolidation component.
 2. The system of claim 1, wherein the tag page includes messages associated with the hash tag.
 3. The system of claim 1, wherein the tag page includes at least one of a list of tag followers, a description, related hash tags, or identity of a tag user.
 4. The system of claim 3, wherein the tag user is included on the tag page based on usage frequency of the hash tag by the tag user.
 5. The system of claim 1, wherein the hash tag is associated with metadata that is added.
 6. The system of claim 1, wherein the personal feed page receives all microblog messages associated with the hash tag.
 7. The system of claim 1, wherein the hash tag is muted to prevent reception of associated microblog messages via the personal feed page.
 8. The system of claim 1, wherein the hash tag is followed based on any mention of the hash tag.
 9. The system of claim 1, wherein the hash tag can be searched from the personal feed page and tracked for all instances by the tracking component.
 10. A computer-implemented information method, comprising acts of: selecting a hash tag of personal interest via a microblog platform; tracking the hash tag in a microblog communications infrastructure; retrieving messages associated with the hash tag; aggregating the hash tag and associated messages on a tag page based on any instance of the hash tag in the microblog communications infrastructure; and utilizing a processor that executes instructions stored in memory to perform at least one of the acts of tracking, retrieving, or aggregating.
 11. The method of claim 10, further comprising adding metadata to the hash tag, the metadata includes at least one of a list of tag followers, a description, related hash tags, or identity of a tag user.
 12. The method of claim 10, further comprising computing a most frequent user of the tag and presenting the most frequent user on the tag page.
 13. The method of claim 10, further comprising muting the hash tag in a personal feed to prevent reception via the personal feed.
 14. The method of claim 10, further comprising searching for all instances of a new hash tag and tracking the new hash tag via a personal feed.
 15. The method of claim 14, further comprising creating a new hash tag page and aggregating the instances of the new hash tag and associated new messages on the new tag page.
 16. The method of claim 15, further comprising updating the new hash tag as new messages associated with the new hash tag are communicated.
 17. A computer-implemented information method, comprising acts of: selecting a hash tag of personal interest via a microblog platform; creating a hash tag page for presentation of associated hash tag information; tracking the hash tag in a microblog communications infrastructure; retrieving messages associated with the hash tag via a personal feed; aggregating the hash tag and associated messages on the tag page; adding metadata to the hash tag, the metadata includes at least one of a list of tag followers, a description, related hash tags, or identity of a tag user; computing a most frequent user of the hash tag and presenting the most frequent user on the tag page; and utilizing a processor that executes instructions stored in memory to perform at least one of the acts of tracking, retrieving, or aggregating.
 18. The method of claim 17, further comprising muting the hash tag to prevent reception of the hash tag and associated messages via the personal feed.
 19. The method of claim 17, further comprising searching for all instances of a new hash tag and tracking the new hash tag via the personal feed.
 20. The method of claim 19, further comprising creating a new hash tag page, aggregating the instances of the new hash tag and associated new messages on the new tag page, and updating the new hash tag as new messages associated with the new hash tag are communicated in microblog communications infrastructure. 